package exception;
/*
java异常处理机制：try...catch
try{
    代码片段
}catch(XXXException e){
     当try的代码片段出现XXXException时的补救措施
}
 */
public class TryCatchDemo {
    public static void main(String[] args) {
        System.out.println("程序开始了");
        try{
           String line=null;
            //try语句中如果出现了异常，那么try中这句代码以下的代码都不执行了
            //try语句中不出现异常，catch块不执行
           System.out.println(line.length());
           String line1="";
           System.out.println(line1.charAt(0));
           String line2 ="abc";
           System.out.println(Integer.parseInt(line2));
        }catch (NullPointerException e){
            System.out.println("出现了空指针异常并解决了");//针对try中出现空指针异常的解决方法
        }catch (StringIndexOutOfBoundsException e){
            System.out.println("出现了下标越界异常并解决了");
        }catch (Exception e){//可以在最后捕获超类型异常，凡是该异常的子类型都可以被捕获并处理
            System.out.println("出现了异常并解决了");
        }

        System.out.println("程序结束了");



    }
}
